home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / AIncludes / CodeFragments.a < prev    next >
Encoding:
Text File  |  1997-08-12  |  15.8 KB  |  532 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        CodeFragments.a
  3. ;
  4. ;    Contains:    Public Code Fragment Manager Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7
  7. ;                Release:    Universal Interfaces 3.0.1
  8. ;
  9. ;    Copyright:    © 1992-1997 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__CODEFRAGMENTS__') = 'UNDEFINED' THEN
  19. __CODEFRAGMENTS__ SET 1
  20.  
  21.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  22.     include 'Types.a'
  23.     ENDIF
  24.     IF &TYPE('__FILES__') = 'UNDEFINED' THEN
  25.     include 'Files.a'
  26.     ENDIF
  27.  
  28.  
  29. ;   §
  30. ;   ===========================================================================================
  31. ;   Universal types and constants
  32. ;   =============================
  33.  
  34.  
  35.  
  36.  
  37.  
  38. kCFragResourceType                EQU        'cfrg'
  39. kCFragResourceID                EQU        0
  40. kCFragLibraryFileType            EQU        'shlb'
  41. kCFragAllFileTypes                EQU        $FFFFFFFF
  42.  
  43. ; typedef OSType                         CFragArchitecture
  44.  
  45.  
  46. kPowerPCCFragArch                EQU        'pwpc'
  47. kMotorola68KCFragArch            EQU        'm68k'
  48. kAnyCFragArch                    EQU        $3F3F3F3F
  49.     IF TARGET_CPU_PPC THEN
  50.  
  51. kCompiledCFragArch                EQU        'pwpc'
  52.     ENDIF    ; TARGET_CPU_PPC
  53.     IF TARGET_CPU_68K THEN
  54.  
  55. kCompiledCFragArch                EQU        'm68k'
  56.     ENDIF    ; TARGET_CPU_68K
  57. ; typedef UInt32                         CFragVersionNumber
  58.  
  59.  
  60. kNullCFragVersion                EQU        0
  61. kWildcardCFragVersion            EQU        $FFFFFFFF
  62.  
  63. ; typedef UInt8                         CFragUsage
  64.  
  65.  
  66. kImportLibraryCFrag                EQU        0                    ; Standard CFM import library.
  67. kApplicationCFrag                EQU        1                    ; MacOS application.
  68. kDropInAdditionCFrag            EQU        2                    ; Application or library private extension/plug-in
  69. kStubLibraryCFrag                EQU        3                    ; Import library used for linking only
  70. kWeakStubLibraryCFrag            EQU        4                    ; Import library used for linking only and will be automatically weak linked
  71.  
  72.  
  73. kIsCompleteCFrag                EQU        0                    ; A "base" fragment, not an update.
  74. kFirstCFragUpdate                EQU        1                    ; The first update, others are numbered 2, 3, ...
  75.  
  76.  
  77. kCFragGoesToEOF                    EQU        0
  78.  
  79.  
  80.  
  81. ; typedef UInt8                         CFragLocatorKind
  82.  
  83.  
  84. kMemoryCFragLocator                EQU        0                    ; Container is already addressable.
  85. kDataForkCFragLocator            EQU        1                    ; Container is in a file's data fork.
  86. kResourceCFragLocator            EQU        2                    ; Container is in a file's resource fork.
  87.  
  88.  
  89. ;   --------------------------------------------------------------------------------------
  90. ;   A 'cfrg' resource consists of a header followed by a sequence of variable length
  91. ;   members.  The constant kDefaultCFragNameLen only provides for a legal ANSI declaration
  92. ;   and for a reasonable display in a debugger.  The actual name field is cut to fit.
  93. ;   There may be "extensions" after the name, the memberSize field includes them.  The
  94. ;   general form of an extension is a 16 bit type code followed by a 16 bit size in bytes.
  95. ;   Only one standard extension type is defined at present, it is used by SOM's searching
  96. ;   mechanism.
  97.  
  98.  
  99.  
  100.  
  101. CFragUsage1Union        RECORD 0
  102. ;  ! Meaning differs depending on value of "usage".
  103. appStackSize             ds.l    1                ; offset: $0 (0)        ;  If the fragment is an application. (Not used by CFM!)
  104. sizeof                     EQU *                    ; size:   $4 (4)
  105.                         ENDR
  106. CFragUsage2Union        RECORD 0
  107. ;  ! Meaning differs depending on value of "usage".
  108. appSubdirID                 ds.w    1                ; offset: $0 (0)        ;  If the fragment is an application.
  109. sizeof                     EQU *                    ; size:   $2 (2)
  110.                         ENDR
  111. CFragWhere1Union        RECORD 0
  112. ;  ! Meaning differs depending on value of "where".
  113. spaceID                     ds.l    1                ; offset: $0 (0)        ;  If the fragment is in memory.  (Actually an AddressSpaceID.)
  114.                          ORG 0
  115. forkKind                 ds.l    1                ; offset: $0 (0)        ;  If the fragment is in an arbitrary byte stream fork.
  116. sizeof                     EQU *                    ; size:   $4 (4)
  117.                         ENDR
  118. CFragWhere2Union        RECORD 0
  119. ;  ! Meaning differs depending on value of "where".
  120. forkInstance             ds.w    1                ; offset: $0 (0)        ;  If the fragment is in an arbitrary byte stream fork.
  121. sizeof                     EQU *                    ; size:   $2 (2)
  122.                         ENDR
  123.  
  124. kDefaultCFragNameLen            EQU        16
  125.  
  126. CFragResourceMember        RECORD 0
  127. architecture             ds.l    1                ; offset: $0 (0)
  128. reservedA                 ds.w    1                ; offset: $4 (4)        ;  ! Must be zero!
  129. reservedB                 ds.b    1                ; offset: $6 (6)        ;  ! Must be zero!
  130. updateLevel                 ds.b    1                ; offset: $7 (7)
  131. currentVersion             ds.l    1                ; offset: $8 (8)
  132. oldDefVersion             ds.l    1                ; offset: $C (12)
  133. uUsage1                     ds        CFragUsage1Union ; offset: $10 (16)
  134. uUsage2                     ds        CFragUsage2Union ; offset: $14 (20)
  135. usage                     ds.b    1                ; offset: $16 (22)
  136. where                     ds.b    1                ; offset: $17 (23)
  137. offset                     ds.l    1                ; offset: $18 (24)
  138. length                     ds.l    1                ; offset: $1C (28)
  139. uWhere1                     ds        CFragWhere1Union ; offset: $20 (32)
  140. uWhere2                     ds        CFragWhere2Union ; offset: $24 (36)
  141. extensionCount             ds.w    1                ; offset: $26 (38)        ;  The number of extensions beyond the name.
  142. memberSize                 ds.w    1                ; offset: $28 (40)        ;  Size in bytes, includes all extensions.
  143. name                     ds.b    16                ; offset: $2A (42)        ;  ! Actually a sized PString.
  144. sizeof                     EQU *                    ; size:   $3A (58)
  145.                         ENDR
  146. ; typedef struct CFragResourceMember *    CFragResourceMemberPtr
  147.  
  148. CFragResourceExtensionHeader RECORD 0
  149. extensionKind             ds.w    1                ; offset: $0 (0)
  150. extensionSize             ds.w    1                ; offset: $2 (2)
  151. sizeof                     EQU *                    ; size:   $4 (4)
  152.                         ENDR
  153. ; typedef struct CFragResourceExtensionHeader * CFragResourceExtensionHeaderPtr
  154.  
  155. CFragResourceSearchExtension RECORD 0
  156. header                     ds        CFragResourceExtensionHeader ; offset: $0 (0)
  157. libKind                     ds.l    1                ; offset: $4 (4)
  158. qualifiers                 ds.b    1                ; offset: $8 (8) <-- really an array of length one ;  ! Actually four PStrings.
  159.                          ORG 10
  160. sizeof                     EQU *                    ; size:   $A (10)
  161.                         ENDR
  162. ; typedef struct CFragResourceSearchExtension * CFragResourceSearchExtensionPtr
  163.  
  164.  
  165. kCFragResourceSearchExtensionKind EQU    $30EE
  166.  
  167. CFragResource            RECORD 0
  168. reservedA                 ds.l    1                ; offset: $0 (0)        ;  ! Must be zero!
  169. reservedB                 ds.l    1                ; offset: $4 (4)        ;  ! Must be zero!
  170. reservedC                 ds.w    1                ; offset: $8 (8)        ;  ! Must be zero!
  171. version                     ds.w    1                ; offset: $A (10)
  172. reservedD                 ds.l    1                ; offset: $C (12)        ;  ! Must be zero!
  173. reservedE                 ds.l    1                ; offset: $10 (16)        ;  ! Must be zero!
  174. reservedF                 ds.l    1                ; offset: $14 (20)        ;  ! Must be zero!
  175. reservedG                 ds.l    1                ; offset: $18 (24)        ;  ! Must be zero!
  176. reservedH                 ds.w    1                ; offset: $1C (28)        ;  ! Must be zero!
  177. memberCount                 ds.w    1                ; offset: $1E (30)
  178. firstMember                 ds        CFragResourceMember ; offset: $20 (32)
  179. sizeof                     EQU *                    ; size:   $5A (90)
  180.                         ENDR
  181. ; typedef struct CFragResource *        CFragResourcePtr
  182.  
  183.  
  184. kCurrCFragResourceVersion        EQU        1
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195. ; typedef UInt32                         CFragLoadOptions
  196.  
  197.  
  198. kReferenceCFrag                    EQU        $0001                ; Try to use existing copy, increment reference counts.
  199. kFindCFrag                        EQU        $0002                ; Try find an existing copy, do not increment reference counts.
  200. kPrivateCFragCopy                EQU        $0005                ; Prepare a new private copy.
  201.  
  202.  
  203. kUnresolvedCFragSymbolAddress    EQU        0
  204.  
  205. ; typedef UInt8                         CFragSymbolClass
  206.  
  207.  
  208. kCodeCFragSymbol                EQU        0
  209. kDataCFragSymbol                EQU        1
  210. kTVectorCFragSymbol                EQU        2
  211. kTOCCFragSymbol                    EQU        3
  212. kGlueCFragSymbol                EQU        4
  213.  
  214.  
  215.  
  216. ;   §
  217. ;   ===========================================================================================
  218. ;   System 7 Services 
  219. ;   ==========================================
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226. ;   ---------------------------------------------------------------------------------
  227. ;   These declarations are for System 7 and the System 8 cooperative environment, but
  228. ;   should be avoided under System 8.  Better alternatives exist for System 8.
  229.  
  230.  
  231.  
  232.  
  233. ;
  234. ; pascal OSErr GetSharedLibrary(ConstStr63Param libName, CFragArchitecture archType, CFragLoadOptions loadFlags, CFragConnectionID *connID, Ptr *mainAddr, Str255 errMessage)
  235. ;
  236.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  237.         Macro
  238.         _GetSharedLibrary
  239.             move.w              #$0001,-(sp)
  240.             dc.w                $AA5A
  241.         EndM
  242.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  243.         IMPORT_CFM_FUNCTION GetSharedLibrary
  244.     ENDIF
  245.  
  246. ;
  247. ; pascal OSErr GetDiskFragment(const FSSpec *fileSpec, UInt32 offset, UInt32 length, ConstStr63Param fragName, CFragLoadOptions loadFlags, CFragConnectionID *connID, Ptr *mainAddr, Str255 errMessage)
  248. ;
  249.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  250.         Macro
  251.         _GetDiskFragment
  252.             move.w              #$0002,-(sp)
  253.             dc.w                $AA5A
  254.         EndM
  255.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  256.         IMPORT_CFM_FUNCTION GetDiskFragment
  257.     ENDIF
  258.  
  259. ;
  260. ; pascal OSErr GetMemFragment(void *memAddr, UInt32 length, ConstStr63Param fragName, CFragLoadOptions loadFlags, CFragConnectionID *connID, Ptr *mainAddr, Str255 errMessage)
  261. ;
  262.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  263.         Macro
  264.         _GetMemFragment
  265.             move.w              #$0003,-(sp)
  266.             dc.w                $AA5A
  267.         EndM
  268.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  269.         IMPORT_CFM_FUNCTION GetMemFragment
  270.     ENDIF
  271.  
  272. ;
  273. ; pascal OSErr CloseConnection(CFragConnectionID *connID)
  274. ;
  275.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  276.         Macro
  277.         _CloseConnection
  278.             move.w              #$0004,-(sp)
  279.             dc.w                $AA5A
  280.         EndM
  281.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  282.         IMPORT_CFM_FUNCTION CloseConnection
  283.     ENDIF
  284.  
  285. ;
  286. ; pascal OSErr FindSymbol(CFragConnectionID connID, ConstStr255Param symName, Ptr *symAddr, CFragSymbolClass *symClass)
  287. ;
  288.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  289.         Macro
  290.         _FindSymbol
  291.             move.w              #$0005,-(sp)
  292.             dc.w                $AA5A
  293.         EndM
  294.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  295.         IMPORT_CFM_FUNCTION FindSymbol
  296.     ENDIF
  297.  
  298. ;
  299. ; pascal OSErr CountSymbols(CFragConnectionID connID, long *symCount)
  300. ;
  301.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  302.         Macro
  303.         _CountSymbols
  304.             move.w              #$0006,-(sp)
  305.             dc.w                $AA5A
  306.         EndM
  307.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  308.         IMPORT_CFM_FUNCTION CountSymbols
  309.     ENDIF
  310.  
  311. ;
  312. ; pascal OSErr GetIndSymbol(CFragConnectionID connID, long symIndex, Str255 symName, Ptr *symAddr, CFragSymbolClass *symClass)
  313. ;
  314.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  315.         Macro
  316.         _GetIndSymbol
  317.             move.w              #$0007,-(sp)
  318.             dc.w                $AA5A
  319.         EndM
  320.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  321.         IMPORT_CFM_FUNCTION GetIndSymbol
  322.     ENDIF
  323.  
  324.  
  325.  
  326. ;   §
  327. ;   ===========================================================================================
  328. ;   Initialization & Termination Routines
  329. ;   =====================================
  330.  
  331.  
  332.  
  333.  
  334.  
  335. ;   -----------------------------------------------------------------------------------------
  336. ;   A fragment's initialization and termination routines are called when a new incarnation of
  337. ;   the fragment is created or destroyed, respectively.  Exactly when this occurs depends on
  338. ;   what kinds of section sharing the fragment has and how the fragment is prepared.  Import
  339. ;   libraries have at most one incarnation per process.  Fragments prepared with option
  340. ;   kPrivateCFragCopy may have many incarnations per process.
  341. ;   The initialization function is passed a pointer to an initialization information structure
  342. ;   and returns an OSErr.  If an initialization function returns a non-zero value the entire
  343. ;   closure of which it is a part fails.  The CFragInitBlock type has different visible parts
  344. ;   under System 7 and System 8, but is of course the same internally.  The C prototype for an
  345. ;   initialization function is:
  346. ;          pascal OSErr    CFragInitFunction    ( const CFragInitBlock *    initBlock );
  347. ;   The termination procedure takes no parameters and returns nothing.  The C prototype for a
  348. ;   termination procedure is:
  349. ;          pascal void        CFragTermProcedure    ( void );
  350.  
  351.  
  352.  
  353.  
  354. CFragSystem7MemoryLocator RECORD 0
  355. address                     ds.l    1                ; offset: $0 (0)
  356. length                     ds.l    1                ; offset: $4 (4)
  357. inPlace                     ds.b    1                ; offset: $8 (8)
  358. reservedA                 ds.b    1                ; offset: $9 (9)        ;  ! Must be zero!
  359. reservedB                 ds.w    1                ; offset: $A (10)        ;  ! Must be zero!
  360. sizeof                     EQU *                    ; size:   $C (12)
  361.                         ENDR
  362. CFragSystem7DiskFlatLocator RECORD 0
  363. fileSpec                 ds.l    1                ; offset: $0 (0)
  364. offset                     ds.l    1                ; offset: $4 (4)
  365. length                     ds.l    1                ; offset: $8 (8)
  366. sizeof                     EQU *                    ; size:   $C (12)
  367.                         ENDR
  368. ;  ! This must have a file specification at the same offset as a disk flat locator!
  369. CFragSystem7SegmentedLocator RECORD 0
  370. fileSpec                 ds.l    1                ; offset: $0 (0)
  371. rsrcType                 ds.l    1                ; offset: $4 (4)
  372. rsrcID                     ds.w    1                ; offset: $8 (8)
  373. reservedA                 ds.w    1                ; offset: $A (10)        ;  ! Must be zero!
  374. sizeof                     EQU *                    ; size:   $C (12)
  375.                         ENDR
  376. CFragSystem7Locator        RECORD 0
  377. where                     ds.l    1                ; offset: $0 (0)
  378. onDisk                     ds        CFragSystem7DiskFlatLocator ; offset: $4 (4)
  379.                          ORG 4
  380. inMem                     ds        CFragSystem7MemoryLocator ; offset: $4 (4)
  381.                          ORG 4
  382. inSegs                     ds        CFragSystem7SegmentedLocator ; offset: $4 (4)
  383. sizeof                     EQU *                    ; size:   $10 (16)
  384.                         ENDR
  385. ; typedef struct CFragSystem7Locator *    CFragSystem7LocatorPtr
  386.  
  387. CFragSystem7InitBlock    RECORD 0
  388. contextID                 ds.l    1                ; offset: $0 (0)
  389. closureID                 ds.l    1                ; offset: $4 (4)
  390. connectionID             ds.l    1                ; offset: $8 (8)
  391. fragLocator                 ds        CFragSystem7Locator ; offset: $C (12)
  392. libName                     ds.l    1                ; offset: $1C (28)
  393. reservedA                 ds.l    1                ; offset: $20 (32)        ;  ! Must be zero!
  394. sizeof                     EQU *                    ; size:   $24 (36)
  395.                         ENDR
  396. ; typedef struct CFragSystem7InitBlock * CFragSystem7InitBlockPtr
  397.  
  398. CFragInitBlock            RECORD 0
  399. f                         ds        CFragSystem7InitBlock
  400. sizeof                     EQU *                    ; size:   $24 (36)
  401.                         ENDR
  402.  
  403.  
  404. ; typedef CFragSystem7InitBlockPtr         CFragInitBlockPtr
  405.  
  406.  
  407. ;   §
  408. ;   ===========================================================================================
  409. ;   Old Name Spellings
  410. ;   ==================
  411.  
  412.  
  413.  
  414.  
  415.  
  416. ;   -------------------------------------------------------------------------------------------
  417. ;   We've tried to reduce the risk of name collisions in the future by introducing the phrase
  418. ;   "CFrag" into constant and type names.  The old names are defined below in terms of the new.
  419.  
  420.  
  421.  
  422.  
  423.  
  424. kLoadCFrag                        EQU        $0001                ; ! Keep kLoadCFrag visible to compilers!
  425.  
  426.     IF OLDROUTINENAMES THEN
  427. ; typedef CFragConnectionID             ConnectionID
  428.  
  429. ; typedef CFragLoadOptions                 LoadFlags
  430.  
  431. ; typedef CFragSymbolClass                 SymClass
  432.  
  433. InitBlock                RECORD 0
  434. f                         ds        CFragInitBlock
  435. sizeof                     EQU *                    ; size:   $24 (36)
  436.                         ENDR
  437.  
  438.  
  439. ; typedef CFragInitBlockPtr             InitBlockPtr
  440.  
  441. MemFragment                RECORD 0
  442. f                         ds        CFragSystem7MemoryLocator
  443. sizeof                     EQU *                    ; size:   $C (12)
  444.                         ENDR
  445.  
  446.  
  447. DiskFragment            RECORD 0
  448. f                         ds        CFragSystem7DiskFlatLocator
  449. sizeof                     EQU *                    ; size:   $C (12)
  450.                         ENDR
  451.  
  452.  
  453. SegmentedFragment        RECORD 0
  454. f                         ds        CFragSystem7SegmentedLocator
  455. sizeof                     EQU *                    ; size:   $C (12)
  456.                         ENDR
  457.  
  458.  
  459. FragmentLocator            RECORD 0
  460. f                         ds        CFragSystem7Locator
  461. sizeof                     EQU *                    ; size:   $10 (16)
  462.                         ENDR
  463.  
  464.  
  465. ; typedef CFragSystem7LocatorPtr         FragmentLocatorPtr
  466.  
  467. CFragHFSMemoryLocator    RECORD 0
  468. f                         ds        CFragSystem7MemoryLocator
  469. sizeof                     EQU *                    ; size:   $C (12)
  470.                         ENDR
  471.  
  472.  
  473. CFragHFSDiskFlatLocator    RECORD 0
  474. f                         ds        CFragSystem7DiskFlatLocator
  475. sizeof                     EQU *                    ; size:   $C (12)
  476.                         ENDR
  477.  
  478.  
  479. CFragHFSSegmentedLocator RECORD 0
  480. f                         ds        CFragSystem7SegmentedLocator
  481. sizeof                     EQU *                    ; size:   $C (12)
  482.                         ENDR
  483.  
  484.  
  485. CFragHFSLocator            RECORD 0
  486. f                         ds        CFragSystem7Locator
  487. sizeof                     EQU *                    ; size:   $10 (16)
  488.                         ENDR
  489.  
  490.  
  491. ; typedef CFragSystem7LocatorPtr         CFragHFSLocatorPtr
  492.  
  493.  
  494. kPowerPCArch                    EQU        'pwpc'
  495. kMotorola68KArch                EQU        'm68k'
  496. kAnyArchType                    EQU        $3F3F3F3F
  497. kNoLibName                        EQU        0
  498. kNoConnectionID                    EQU        0
  499. kLoadLib                        EQU        $0001
  500. kFindLib                        EQU        $0002
  501. kNewCFragCopy                    EQU        $0005
  502. kLoadNewCopy                    EQU        $0005
  503. kUseInPlace                        EQU        $80
  504. kCodeSym                        EQU        0
  505. kDataSym                        EQU        1
  506. kTVectSym                        EQU        2
  507. kTOCSym                            EQU        3
  508. kGlueSym                        EQU        4
  509. kInMem                            EQU        0
  510. kOnDiskFlat                        EQU        1
  511. kOnDiskSegmented                EQU        2
  512. kIsLib                            EQU        0
  513. kIsApp                            EQU        1
  514. kIsDropIn                        EQU        2
  515. kFullLib                        EQU        0
  516. kUpdateLib                        EQU        1
  517. kWholeFork                        EQU        0
  518. kCFMRsrcType                    EQU        'cfrg'
  519. kCFMRsrcID                        EQU        0
  520. kSHLBFileType                    EQU        'shlb'
  521. kUnresolvedSymbolAddress        EQU        0
  522.  
  523. kPowerPC                        EQU        'pwpc'
  524. kMotorola68K                    EQU        'm68k'
  525.     ENDIF    ; OLDROUTINENAMES
  526.  
  527.  
  528.  
  529.  
  530.     ENDIF ; __CODEFRAGMENTS__ 
  531.  
  532.